<?php
class pro_tagihan_sewa_model extends MY_Model {
	var $model = 'pro_tagihan_sewa_model';
	
	function GetJSON()
	{	
		if ($this->input->post('set')=='filter'){
			$bulan_dari = $this->input->post('bulan_dari');
			$bulan_sampai = $this->input->post('bulan_sampai');
			$tahuna = $this->input->post('tahun');
			$status_bayar = $this->input->post('status_bayar');

			$ls_sql	= "	SELECT	a.id_tagihan_sewa,a.id_lokasi,a.no_tenant,a.no_tagihan_sewa,a.nama_tenant,a.no_toko,
								a.jenis_usaha,a.lokasi_tempat,a.harga_sewa,
								a.tanggal_pembayaran,a.status_bayar,
								a.keterangan,TO_CHAR(a.tanggal_bayar,'DD/MM/YYYY') tanggal_bayar,
								a.no_bukti_pembayaran, b.nama_bulan, b.id_bulan,
								SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2) AS tahun,
								SUBSTR(a.tanggal_pembayaran, 0, INSTR(a.tanggal_pembayaran, '-')-1) AS bulan,
								concat(b.nama_bulan,REPLACE(SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2), '-',b.nama_bulan)) as periode_pembayaran
						FROM	pro_tagihan_sewa a
						LEFT JOIN pro_nama_bulan b ON a.id_bulan = b.id_bulan
						WHERE 	(SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2) = '$tahuna' AND SUBSTR(a.tanggal_pembayaran, 0, INSTR(a.tanggal_pembayaran, '-')-1) >='$bulan_dari') AND
								(SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2) = '$tahuna' AND SUBSTR(a.tanggal_pembayaran, 0, INSTR(a.tanggal_pembayaran, '-')-1) <='$bulan_sampai') AND
								a.status_bayar = '$status_bayar'  AND
								(UPPER(a.no_tagihan_sewa) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.nama_tenant) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.no_toko) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.jenis_usaha) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.lokasi_tempat) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.harga_sewa) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.tanggal_pembayaran) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.status_bayar) LIKE '%".strtoupper(post('keyword'))."%')
								ORDER BY ".(post('sort')=='' ? 'a.no_tagihan_sewa' : post('sort'))." ".(post('order')=='' ? 'asc' : post('order'));	
			return json_encode($this->paging($ls_sql) );
		} else if ($this->input->post('set')=='filter' && $this->input->post('status_bayar')=='all'){
			$ls_sql	= "	SELECT	id_tagihan_sewa,id_lokasi,no_tenant,no_tagihan_sewa,nama_tenant,no_toko,
								jenis_usaha,lokasi_tempat,harga_sewa,
								tanggal_pembayaran,status_bayar,
								keterangan,TO_CHAR(tanggal_bayar,'DD/MM/YYYY') tanggal_bayar,
								no_bukti_pembayaran
						FROM	pro_tagihan_sewa
						WHERE	(UPPER(no_tagihan_sewa) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(nama_tenant) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(no_toko) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(jenis_usaha) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(lokasi_tempat) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(harga_sewa) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(tanggal_pembayaran) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(status_bayar) LIKE '%".strtoupper(post('keyword'))."%')
								ORDER BY ".(post('sort')=='' ? 'no_tagihan_sewa' : post('sort'))." ".(post('order')=='' ? 'asc' : post('order'));	
			return json_encode($this->paging($ls_sql) );	
		} else {
			$ls_sql	= "	SELECT	a.id_tagihan_sewa,a.id_lokasi,a.no_tenant,a.no_tagihan_sewa,a.nama_tenant,a.no_toko,
								a.jenis_usaha,a.lokasi_tempat,a.harga_sewa,
								a.tanggal_pembayaran,a.status_bayar,
								a.keterangan,TO_CHAR(a.tanggal_bayar,'DD/MM/YYYY') tanggal_bayar,
								a.no_bukti_pembayaran, b.nama_bulan, b.id_bulan,
								SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2) AS tahun,
								SUBSTR(a.tanggal_pembayaran, 0, INSTR(a.tanggal_pembayaran, '-')-1) AS bulan,
								concat(b.nama_bulan,REPLACE(SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2), '-',b.nama_bulan)) as periode_pembayaran
						FROM	pro_tagihan_sewa a
						LEFT JOIN pro_nama_bulan b ON a.id_bulan = b.id_bulan
						WHERE	(UPPER(a.no_tagihan_sewa) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.nama_tenant) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.no_toko) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.jenis_usaha) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.lokasi_tempat) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.harga_sewa) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.tanggal_pembayaran) LIKE '%".strtoupper(post('keyword'))."%'
								OR UPPER(a.status_bayar) LIKE '%".strtoupper(post('keyword'))."%')
								ORDER BY ".(post('sort')=='' ? 'a.no_tagihan_sewa' : post('sort'))." ".(post('order')=='' ? 'asc' : post('order'));	
			return json_encode($this->paging($ls_sql) );
		}

	}

	function Add($arr_data){
		$this->db->insert('pro_tagihan_sewa', $arr_data);
	}
	
	function Update($arr_data, $arr_rule){
		$this->db->update('pro_tagihan_sewa', $arr_data, $arr_rule);
	}
	
	function GetSingle($as_no_tagihan_sewa){
		$result = $this->db->query("SELECT	a.id_tagihan_sewa,a.id_lokasi,a.no_tenant,a.no_tagihan_sewa,a.nama_tenant,a.no_toko,
											a.jenis_usaha,a.lokasi_tempat,a.harga_sewa,
											a.tanggal_pembayaran,a.status_bayar,
											a.keterangan,TO_CHAR(a.tanggal_bayar,'DD/MM/YYYY') tanggal_bayar,
											a.no_bukti_pembayaran, b.nama_bulan, b.id_bulan,
											SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2) AS tahun,
											SUBSTR(a.tanggal_pembayaran, 0, INSTR(a.tanggal_pembayaran, '-')-1) AS bulan,
											concat(b.nama_bulan,REPLACE(SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2), '-',b.nama_bulan)) as periode_pembayaran
									FROM	pro_tagihan_sewa a
									LEFT JOIN pro_nama_bulan b ON a.id_bulan = b.id_bulan
									WHERE a.no_tagihan_sewa = '$as_no_tagihan_sewa'");
		if($result->num_rows() == 1){
			return $result->row_array();
		}else{
			return NULL;
		}
	}
	
	function GetSingleView($as_no_tagihan_sewa)	
	{
		$result = $this->db->query("SELECT	a.id_tagihan_sewa,a.id_lokasi,a.no_tenant,a.no_tagihan_sewa,a.nama_tenant,a.no_toko,
											a.jenis_usaha,a.lokasi_tempat,a.harga_sewa,
											a.tanggal_pembayaran,a.status_bayar,
											a.keterangan,TO_CHAR(a.tanggal_bayar,'DD/MM/YYYY') tanggal_bayar,
											a.no_bukti_pembayaran, b.nama_bulan, b.id_bulan,
											SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2) AS tahun,
											SUBSTR(a.tanggal_pembayaran, 0, INSTR(a.tanggal_pembayaran, '-')-1) AS bulan,
											concat(b.nama_bulan,REPLACE(SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2), '-',b.nama_bulan)) as periode_pembayaran
									FROM	pro_tagihan_sewa a
									LEFT JOIN pro_nama_bulan b ON a.id_bulan = b.id_bulan
									WHERE a.no_tagihan_sewa = '$as_no_tagihan_sewa'");
		if($result->num_rows() == 1){
			return $result->row_array();
		}else{
			return NULL;
		}
	}

	function dataEdit($as_no_tagihan_sewa)	
	{
		$result = $this->db->query("SELECT	a.id_tagihan_sewa,a.id_lokasi,a.no_tenant,a.no_tagihan_sewa,a.nama_tenant,a.no_toko,
											a.jenis_usaha,a.lokasi_tempat,a.harga_sewa,
											a.tanggal_pembayaran,a.status_bayar,
											a.keterangan,TO_CHAR(a.tanggal_bayar,'DD/MM/YYYY') tanggal_bayar,
											a.no_bukti_pembayaran, b.nama_bulan, b.id_bulan,
											SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2) AS tahun,
											SUBSTR(a.tanggal_pembayaran, 0, INSTR(a.tanggal_pembayaran, '-')-1) AS bulan,
											concat(b.nama_bulan,REPLACE(SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2), '-',b.nama_bulan)) as periode_pembayaran
									FROM	pro_tagihan_sewa a
									LEFT JOIN pro_nama_bulan b ON a.id_bulan = b.id_bulan
									WHERE a.no_tagihan_sewa = '/.$as_no_tagihan_sewa'");
		if($result->num_rows() == 1){
			return $result->row_array();
		}else{
			return NULL;
		}
	}


	function DeleteSingle($arr_rule)
	{
		try {
			if(	intval($this->get_data("SELECT COUNT(1) FROM pro_tagihan_sewa WHERE no_tagihan_sewa = '".$arr_rule['no_tagihan_sewa']."'"))<=0)
			{
				return $this->error_delete.' [id: '.$arr_rule['no_tagihan_sewa']."]<br />";
			}else{
				$this->db->delete('pro_tagihan_sewa', array('no_tagihan_sewa' => $arr_rule['no_tagihan_sewa']));
				return '';
			}
		} catch(Exception $e) {
			return $e->getMessage();
		}
	}

	function GetCetak($as_no_tagihan_sewa)
	{
		$result1 = $this->db->query(" 	SELECT	a.id_tagihan_sewa,a.no_tagihan_sewa,a.nama_tenant,a.no_toko,
												a.jenis_usaha,a.lokasi_tempat,a.harga_sewa,
												a.tanggal_pembayaran,a.status_bayar,
												a.keterangan,TO_CHAR(a.tanggal_bayar,'DD/MM/YYYY') tanggal_bayar,
												a.no_bukti_pembayaran, b.nama_bulan, b.id_bulan,
												SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2) AS tahun,
												SUBSTR(a.tanggal_pembayaran, 0, INSTR(a.tanggal_pembayaran, '-')-1) AS bulan,
												concat(b.nama_bulan,REPLACE(SUBSTR(a.tanggal_pembayaran, 4, INSTR(a.tanggal_pembayaran, '-')+2), '-',b.nama_bulan)) as periode_pembayaran
										FROM	pro_tagihan_sewa a
										LEFT JOIN pro_nama_bulan b ON a.id_bulan = b.id_bulan
										WHERE	a.no_tagihan_sewa = '$as_no_tagihan_sewa' ");

		
		return $result1->row_array();
		
	}

}


?>

